package exception;

/**
 * 使用当前类测试异常的抛出
 */
public class Person {
    private int age;

    public int getAge() {
        return age;
    }

    public void setAge(int age) throws IllegalAgeException {
        if(age<0||age>100){
//            throw new RuntimeException("年龄必须在0-100之间");
            /*
                除了RuntimeException，当主动使用throw抛出其他异常时
                编译器要求必须在方法上使用throws声明该异常的抛出以便通知
                调用者处理
             */
//            throw new Exception("年龄必须在0-100之间");
            throw new IllegalAgeException("年龄必须在0-100之间",age);
        }
        this.age = age;
    }
}
